// vue.config.js

/**
 * @type {import('@vue/cli-service').ProjectOptions}
 */
module.exports = {
    configureWebpack: {
        externals: {
            vue: "Vue", //这些是你不需要webpakc帮你打包的库
            "vue-router": "VueRouter",
            "ant-design-vue": "antd",
            "vue-amap": "VueAMap",
            g2plot: "G2Plot",
            clipboard: "ClipboardJS",
            moment: "moment",
            // 'element-ui': 'ELEMENT',//这个比较坑　一开始我还以为是ElementUI结果就报错了XD
        },
        // module: {
        //     // 模块
        //     rules: [
        //         // 规则
        //         {
        //             test: /\.css$/, // 正则表达式，匹配 .css 文件资源,不要加引号
        //             use: [
        //                 // 使用的 Loader ,注意顺序不能错
        //                 "style-loader",
        //                 "css-loader",
        //                 "less-loader",
        //                 "sass-loader",
        //             ],
        //         },
        //     ],
        // },
    },

    chainWebpack: (config) => {
        // 添加全局scss文件
        // const types = ['vue-modules', 'vue', 'normal-modules', 'normal']
        // types.forEach(type => { //匹配到所有需要导入的文件
        //     config.module.rule('scss')
        //         .oneOf(type)
        //         .use('style-resource')
        //         .loader('style-resources-loader')
        //         .options({
        //             patterns: [
        //                 // path.resolve(__dirname, 'src/css/base.scss')
        //             ]
        //         })
        // })
        // 移除 prefetch 插件 //预加载
        config.plugins.delete('prefetch')
        // config.module
        //     .rule("less")
        //     .use("less-loader")
        //     .loader("less-loader")
        //     .options({
        //         lessOptions: {
        //             /**less-loader 配置 */
        //             strictMath: true,
        //             noIeCompat: true,
        //         },
        //     });
    },

    css: {
        loaderOptions: {
            css: {
                // options here will be passed to css-loader
            },
            postcss: {
                // options here will be passed to postcss-loader
            },
            sass: {},
        },
    },

    lintOnSave: false,
};
